﻿using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;

namespace Scrubblet.FrontEnd.Models.Entities
{
    public class GameMove
    {
        public GameMove()
        {
            PutTiles = new Collection<PutTile>();
            NewTiles = new Collection<Tile>();
        }

        public int Id { get; set; }

        public UserProfile Player { get; set; }
        public DateTime PerformedOn { get; set; }

        public GameMoveType Type { get; set; }

        
        /// <summary>
        /// Tiles either put to table, or exchanged.
        /// </summary>
        public ICollection<PutTile> PutTiles { get; set; }

        /// <summary>
        /// Tiles received from the bag.
        /// </summary>
        public ICollection<Tile> NewTiles { get; set; }
    }
}